using System;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("NewNineSliceElement")]
	public class NewNineSliceElement : MonoBehaviour
	{
		public enum PinnedPoint
		{
			TOPLEFT,
			TOP,
			TOPRIGHT,
			LEFT,
			MIDDLE,
			RIGHT,
			BOTTOMLEFT,
			BOTTOM,
			BOTTOMRIGHT
		}

		public enum PlaneAxis
		{
			XY,
			XZ
		}

		public enum Mode
		{
			UseMiddleScale,
			UseSize
		}

		public GameObject m_topLeft => method_3<GameObject>("m_topLeft");

		public GameObject m_top => method_3<GameObject>("m_top");

		public GameObject m_topRight => method_3<GameObject>("m_topRight");

		public GameObject m_left => method_3<GameObject>("m_left");

		public GameObject m_right => method_3<GameObject>("m_right");

		public GameObject m_middle => method_3<GameObject>("m_middle");

		public GameObject m_bottomLeft => method_3<GameObject>("m_bottomLeft");

		public GameObject m_bottom => method_3<GameObject>("m_bottom");

		public GameObject m_bottomRight => method_3<GameObject>("m_bottomRight");

		public GameObject m_anchorBone => method_3<GameObject>("m_anchorBone");

		public PinnedPoint m_pinnedPoint => method_2<PinnedPoint>("m_pinnedPoint");

		public PlaneAxis m_planeAxis => method_2<PlaneAxis>("m_planeAxis");

		public Vector3 m_pinnedPointOffset => method_2<Vector3>("m_pinnedPointOffset");

		public Vector2 m_middleScale => method_2<Vector2>("m_middleScale");

		public Vector2 m_size => method_2<Vector2>("m_size");

		public Mode m_mode => method_2<Mode>("m_mode");

		public NewNineSliceElement(IntPtr address, string className)
			: base(address, className)
		{
		}

		public NewNineSliceElement(IntPtr address)
			: this(address, "NewNineSliceElement")
		{
		}

		public void SetSize(float width, float height)
		{
			method_8("SetSize", width, height);
		}

		public void SetPieceWidth(GameObject piece, float width)
		{
			method_8("SetPieceWidth", piece, width);
		}

		public void SetPieceHeight(GameObject piece, float height)
		{
			method_8("SetPieceHeight", piece, height);
		}
	}
}
